import cv2
import os
import os.path as osp

"""
pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple
循环文件夹裁剪图片
"""


# 判断文件是否为图片
def is_img(ext):
    ext.lower()
    if ext in ['.jpg', '.png', '.jpeg', '.bmp']:
        return True
    else:
        return False


# 剪切图片
def cut_pic(file_path, pic_name):
    img = cv2.imread(file_path + pic_name)
    print(img.shape)  # 高度、宽度、通道数
    cropped = img[10:90, 0:650]  # 裁剪坐标为[y0:y1, x0:x1]
    new_path = file_path + "cut\\" + "cut_" + pic_name
    print(new_path + "\n")
    cv2.imwrite(new_path, cropped)


file_path = r'C:\Users\bingwa\Desktop\pic\car' + '\\'
# file_path = r'..\car' + '\\'
# 用于遍历指定文件下所有的子目录、非目录子文件。
# for i, j, k in os.walk(filePath):
#     print(i, j, k)

# 返回指定的文件夹下包含的文件或文件夹名字的列表，这个列表按字母顺序排序。
pic_list = os.listdir(file_path)
for file in pic_list:
    if is_img(osp.splitext(file)[1]):
        print(file_path + file)
        cut_pic(file_path, file)
